package com.grgbanking.it.project.service;

import java.util.List;

import com.grgbanking.it.base.IAlterService;
import com.grgbanking.it.base.IDeleteService;
import com.grgbanking.it.base.IWXConnectionService;
import com.grgbanking.it.project.entity.Task;
import com.grgbanking.it.project.entity.TaskResult;

/**
 * 日常任务管理
 * 
 * IDailyTaskService
 * 
 * @author 潘广伟
 * @Email p_3er@qq.com
 * @Date 2015-1-23 下午4:16:20
 * 
 * @version 1.0.0
 *
 */
public interface ITaskService extends IWXConnectionService,IAlterService<Task>,IDeleteService<Integer>{
	/**
	 * 获取任务到页面日历中
	 * findJsonForCalender
	 * 
	 * @param start
	 * @param end
	 * @param userId
	 * @return
	 * @throws Exception 
	 * @exception 
	 * @since  1.0.0
	 */
	public String findJsonForCalender(String start,String end,String userId) throws Exception;
	/**
	 * 查找一天的任务
	 * findByDaily
	 * 
	 * @param date
	 * @param userId
	 * @return
	 * @throws Exception 
	 * @exception 
	 * @since  1.0.0
	 */
	public String findByDaily(String date,String userId) throws Exception;
	/**
	 * 获取部门所有人的任务信息
	 * findToTeam
	 * 
	 * @param date
	 * @param deptId
	 * @return
	 * @throws Exception 
	 * @exception 
	 * @since  1.0.0
	 */
	public String findToTeam(String date,String deptId) throws Exception;
	/**
	 * 直接完成
	 * updateFinish
	 * 
	 * @param id 
	 * @exception 
	 * @since  1.0.0
	 */
	public void updateDirectFinish(Integer id);
	/**
	 * 延期到明天
	 * updatePostponeToTomorrow
	 * 
	 * @param id 
	 * @exception 
	 * @since  1.0.0
	 */
	public void updatePostponeToTomorrow(Integer id) throws Exception ;
	/**
	 * 处理操作
	 * (完成或延期)
	 * updateHandle
	 * 
	 * @param id
	 * @param data 
	 * @exception 
	 * @since  1.0.0
	 */
	public void updateHandle(Integer id,TaskResult data) throws Exception ;
}
